#ifndef DBPOOL_H
#define DBPOOL_H

#include <QSqlDatabase>
#include <QList>
#include <QMutex>
#include <QSqlQuery>

class DBPool
{
public:
    DBPool();

public:
    // 初始化连接池
    static void init(QString ip, int port, QString user, QString password, QString databaseName, int pool_size);
    // 卸载数据连接池
    static void unInit();

public:
    // 获取数据连接
    static bool popDatabase(QSqlDatabase& db);
    // 归还数据连接
    static void pushDatabase(QSqlDatabase& db);

protected:
    // 数据库连接池
    static QList<QSqlDatabase> databases;
    // 连接池互斥起
    static QMutex mutex;
};

#endif // DBPOOL_H
